A Convolutional Neural Network (CNN) is an efficient image recognition method that has been developed in recent years and attracted wide attention. It has excellent performance in large image processing. At present, the convolutional neural network has become one of the research hotspots in many scientific fields. Since the convolutional neural network can avoid complex pre-processing for images and can directly input original images, so it has been more widely used in the field of pattern classification.
Generally speaking, the convolutional neural network includes a convolution layer, a pooling layer and a full connection layer. In practical applications, calculations of the convolution layer accounts for more than 90% of total calculated amount. Although the calculation of the full connection layer accounts for a small proportion, it has a large number of weights. At present, two sets of independent hardware are generally required to calculate the convolution layer and the full connection layer respectively, which can be done in parallel in theory. However, because of small proportion of calculation amount involved in the full connection layer, so that an engine are idle in most cases, which leads to wasting of resources.
Therefore, the existing convolutional neural networks have problems of high hardware costs and waste of resources.